<?php
/**
 * Ipanti
 *
 * @category Jdcloud
 * @package  DragonJd\Ipanti
 * @author   Jdcloud <jdcloud-api@jd.com>
 * @license  Apache-2.0 http://www.apache.org/licenses/LICENSE-2.0
 * @link     https://www.jdcloud.com/help/faq
 */

namespace DragonJd\Ipanti;

use DragonJd\JdCloudClient;
use DragonJd\Api\Service;
use DragonJd\Api\DocModel;
use DragonJd\Api\ApiProvider;
use DragonJd\PresignUrlMiddleware;

/**
 * Client used to interact with ipanti.
 *
 * @method \DragonJd\Result describeDDoSAttackLogs(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeDDoSAttackLogsAsync(array $args = [])
 * @method \DragonJd\Result describeDDoSIpAttackLogs(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeDDoSIpAttackLogsAsync(array $args = [])
 * @method \DragonJd\Result describeCCAttackLogs(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeCCAttackLogsAsync(array $args = [])
 * @method \DragonJd\Result describeCCAttackLogDetails(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeCCAttackLogDetailsAsync(array $args = [])
 * @method \DragonJd\Result describeAttackStatistics(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeAttackStatisticsAsync(array $args = [])
 * @method \DragonJd\Result describeAttackTypeCount(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeAttackTypeCountAsync(array $args = [])
 * @method \DragonJd\Result describeDDoSGraph(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeDDoSGraphAsync(array $args = [])
 * @method \DragonJd\Result describeFwdGraph(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeFwdGraphAsync(array $args = [])
 * @method \DragonJd\Result describeBusinessGraph(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeBusinessGraphAsync(array $args = [])
 * @method \DragonJd\Result describeCCGraph(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeCCGraphAsync(array $args = [])
 * @method \DragonJd\Result describeStatusGraph(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeStatusGraphAsync(array $args = [])
 * @method \DragonJd\Result describeConnStatGraph(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeConnStatGraphAsync(array $args = [])
 * @method \DragonJd\Result describeDispatchRules(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeDispatchRulesAsync(array $args = [])
 * @method \DragonJd\Result createDispatchRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createDispatchRuleAsync(array $args = [])
 * @method \DragonJd\Result createDispatchRules(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createDispatchRulesAsync(array $args = [])
 * @method \DragonJd\Result modifyDispatchRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyDispatchRuleAsync(array $args = [])
 * @method \DragonJd\Result deleteDispatchRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteDispatchRuleAsync(array $args = [])
 * @method \DragonJd\Result switchDispatchRuleProtect(array $args = [])
 * @method \GuzzleHttp\Promise\Promise switchDispatchRuleProtectAsync(array $args = [])
 * @method \DragonJd\Result switchDispatchRuleOrigin(array $args = [])
 * @method \GuzzleHttp\Promise\Promise switchDispatchRuleOriginAsync(array $args = [])
 * @method \DragonJd\Result describeForwardRules(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeForwardRulesAsync(array $args = [])
 * @method \DragonJd\Result createForwardRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createForwardRuleAsync(array $args = [])
 * @method \DragonJd\Result createForwardRules(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createForwardRulesAsync(array $args = [])
 * @method \DragonJd\Result describeForwardRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeForwardRuleAsync(array $args = [])
 * @method \DragonJd\Result modifyForwardRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyForwardRuleAsync(array $args = [])
 * @method \DragonJd\Result deleteForwardRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteForwardRuleAsync(array $args = [])
 * @method \DragonJd\Result switchForwardRuleProtect(array $args = [])
 * @method \GuzzleHttp\Promise\Promise switchForwardRuleProtectAsync(array $args = [])
 * @method \DragonJd\Result switchForwardRuleOrigin(array $args = [])
 * @method \GuzzleHttp\Promise\Promise switchForwardRuleOriginAsync(array $args = [])
 * @method \DragonJd\Result describeProtectionRuleOfForwardRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeProtectionRuleOfForwardRuleAsync(array $args = [])
 * @method \DragonJd\Result modifyProtectionRuleOfForwardRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyProtectionRuleOfForwardRuleAsync(array $args = [])
 * @method \DragonJd\Result describeGeoAreas(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeGeoAreasAsync(array $args = [])
 * @method \DragonJd\Result describeBlackListRuleOfForwardRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeBlackListRuleOfForwardRuleAsync(array $args = [])
 * @method \DragonJd\Result modifyBlackListRuleOfForwardRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyBlackListRuleOfForwardRuleAsync(array $args = [])
 * @method \DragonJd\Result enableBlackListRuleOfForwardRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise enableBlackListRuleOfForwardRuleAsync(array $args = [])
 * @method \DragonJd\Result disableBlackListRuleOfForwardRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disableBlackListRuleOfForwardRuleAsync(array $args = [])
 * @method \DragonJd\Result describeWhiteListRuleOfForwardRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeWhiteListRuleOfForwardRuleAsync(array $args = [])
 * @method \DragonJd\Result modifyWhiteListRuleOfForwardRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyWhiteListRuleOfForwardRuleAsync(array $args = [])
 * @method \DragonJd\Result enableWhiteListRuleOfForwardRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise enableWhiteListRuleOfForwardRuleAsync(array $args = [])
 * @method \DragonJd\Result disableWhiteListRuleOfForwardRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disableWhiteListRuleOfForwardRuleAsync(array $args = [])
 * @method \DragonJd\Result describeInstanceAcl(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeInstanceAclAsync(array $args = [])
 * @method \DragonJd\Result modifyInstanceAcl(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyInstanceAclAsync(array $args = [])
 * @method \DragonJd\Result recoverInstanceAcl(array $args = [])
 * @method \GuzzleHttp\Promise\Promise recoverInstanceAclAsync(array $args = [])
 * @method \DragonJd\Result describeCustomPages(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeCustomPagesAsync(array $args = [])
 * @method \DragonJd\Result createCustomPage(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createCustomPageAsync(array $args = [])
 * @method \DragonJd\Result modifyCustomPage(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyCustomPageAsync(array $args = [])
 * @method \DragonJd\Result deleteCustomPage(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteCustomPageAsync(array $args = [])
 * @method \DragonJd\Result modifyInstanceCustomPage(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyInstanceCustomPageAsync(array $args = [])
 * @method \DragonJd\Result modifyInstanceCustomPageDefault(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyInstanceCustomPageDefaultAsync(array $args = [])
 * @method \DragonJd\Result enableInstanceCustomPage(array $args = [])
 * @method \GuzzleHttp\Promise\Promise enableInstanceCustomPageAsync(array $args = [])
 * @method \DragonJd\Result disableInstanceCustomPage(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disableInstanceCustomPageAsync(array $args = [])
 * @method \DragonJd\Result describeInstances(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeInstancesAsync(array $args = [])
 * @method \DragonJd\Result createInstance(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createInstanceAsync(array $args = [])
 * @method \DragonJd\Result describeInstance(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeInstanceAsync(array $args = [])
 * @method \DragonJd\Result modifyInstanceName(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyInstanceNameAsync(array $args = [])
 * @method \DragonJd\Result modifyEPB(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyEPBAsync(array $args = [])
 * @method \DragonJd\Result describeAlarmConfig(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeAlarmConfigAsync(array $args = [])
 * @method \DragonJd\Result modifyAlarmConfig(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyAlarmConfigAsync(array $args = [])
 * @method \DragonJd\Result describeOriginWhiteIpList(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeOriginWhiteIpListAsync(array $args = [])
 * @method \DragonJd\Result describeServiceIpList(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeServiceIpListAsync(array $args = [])
 * @method \DragonJd\Result describeInstanceIdByResourceId(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeInstanceIdByResourceIdAsync(array $args = [])
 * @method \DragonJd\Result describeNameList(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeNameListAsync(array $args = [])
 * @method \DragonJd\Result describeProtectionStatistics(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeProtectionStatisticsAsync(array $args = [])
 * @method \DragonJd\Result describeProtectionOutline(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeProtectionOutlineAsync(array $args = [])
 * @method \DragonJd\Result checkName(array $args = [])
 * @method \GuzzleHttp\Promise\Promise checkNameAsync(array $args = [])
 * @method \DragonJd\Result describeVpcIpList(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeVpcIpListAsync(array $args = [])
 * @method \DragonJd\Result describeCpsIpList(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeCpsIpListAsync(array $args = [])
 * @method \DragonJd\Result describeCcsIpList(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeCcsIpListAsync(array $args = [])
 * @method \DragonJd\Result describeIpSets(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeIpSetsAsync(array $args = [])
 * @method \DragonJd\Result createIpSet(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createIpSetAsync(array $args = [])
 * @method \DragonJd\Result describeIpSet(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeIpSetAsync(array $args = [])
 * @method \DragonJd\Result deleteIpSet(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteIpSetAsync(array $args = [])
 * @method \DragonJd\Result describeIpSetUsage(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeIpSetUsageAsync(array $args = [])
 * @method \DragonJd\Result describeWebRules(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeWebRulesAsync(array $args = [])
 * @method \DragonJd\Result createWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createWebRuleAsync(array $args = [])
 * @method \DragonJd\Result createWebRules(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createWebRulesAsync(array $args = [])
 * @method \DragonJd\Result describeWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeWebRuleAsync(array $args = [])
 * @method \DragonJd\Result modifyWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyWebRuleAsync(array $args = [])
 * @method \DragonJd\Result deleteWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteWebRuleAsync(array $args = [])
 * @method \DragonJd\Result bindCert(array $args = [])
 * @method \GuzzleHttp\Promise\Promise bindCertAsync(array $args = [])
 * @method \DragonJd\Result switchWebRuleProtect(array $args = [])
 * @method \GuzzleHttp\Promise\Promise switchWebRuleProtectAsync(array $args = [])
 * @method \DragonJd\Result switchWebRuleOrigin(array $args = [])
 * @method \GuzzleHttp\Promise\Promise switchWebRuleOriginAsync(array $args = [])
 * @method \DragonJd\Result enableWebRuleCC(array $args = [])
 * @method \GuzzleHttp\Promise\Promise enableWebRuleCCAsync(array $args = [])
 * @method \DragonJd\Result disableWebRuleCC(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disableWebRuleCCAsync(array $args = [])
 * @method \DragonJd\Result enableWebRuleCCObserverMode(array $args = [])
 * @method \GuzzleHttp\Promise\Promise enableWebRuleCCObserverModeAsync(array $args = [])
 * @method \DragonJd\Result disableWebRuleCCObserverMode(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disableWebRuleCCObserverModeAsync(array $args = [])
 * @method \DragonJd\Result describeJsPagesOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeJsPagesOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result createJsPageOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createJsPageOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result createJsPagesOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createJsPagesOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result modifyJsPageOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyJsPageOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result deleteJsPageOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteJsPageOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result disableWebRuleJsPage(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disableWebRuleJsPageAsync(array $args = [])
 * @method \DragonJd\Result enableWebRuleJsPage(array $args = [])
 * @method \GuzzleHttp\Promise\Promise enableWebRuleJsPageAsync(array $args = [])
 * @method \DragonJd\Result modifyWebRuleJsPageToAll(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyWebRuleJsPageToAllAsync(array $args = [])
 * @method \DragonJd\Result modifyWebRuleJsPageToCustom(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyWebRuleJsPageToCustomAsync(array $args = [])
 * @method \DragonJd\Result describeCCProtectionRulesOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeCCProtectionRulesOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result createCCProtectionRuleOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createCCProtectionRuleOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result describeCCProtectionRuleOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeCCProtectionRuleOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result modifyCCProtectionRuleOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyCCProtectionRuleOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result deleteCCProtectionRuleOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteCCProtectionRuleOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result enableCCProtectionRuleOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise enableCCProtectionRuleOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result disableCCProtectionRuleOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disableCCProtectionRuleOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result enableWebRuleCCProtectionRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise enableWebRuleCCProtectionRuleAsync(array $args = [])
 * @method \DragonJd\Result disableWebRuleCCProtectionRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disableWebRuleCCProtectionRuleAsync(array $args = [])
 * @method \DragonJd\Result describeCCProtectionConfigOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeCCProtectionConfigOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result modifyCCProtectionConfigOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyCCProtectionConfigOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result describeCCProtectionDefaultConfigOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeCCProtectionDefaultConfigOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result modifyCertInfo(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyCertInfoAsync(array $args = [])
 * @method \DragonJd\Result describeWebRuleBlackListUsage(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeWebRuleBlackListUsageAsync(array $args = [])
 * @method \DragonJd\Result describeBlackListRulesOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeBlackListRulesOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result createBlackListRuleOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createBlackListRuleOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result describeBlackListRuleOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeBlackListRuleOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result modifyBlackListRuleOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyBlackListRuleOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result deleteBlackListRuleOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteBlackListRuleOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result enableWebRuleBlackList(array $args = [])
 * @method \GuzzleHttp\Promise\Promise enableWebRuleBlackListAsync(array $args = [])
 * @method \DragonJd\Result enableBlackListRuleOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise enableBlackListRuleOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result disableWebRuleBlackList(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disableWebRuleBlackListAsync(array $args = [])
 * @method \DragonJd\Result disableBlackListRuleOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disableBlackListRuleOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result describeWebRuleWhiteListUsage(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeWebRuleWhiteListUsageAsync(array $args = [])
 * @method \DragonJd\Result describeWhiteListRulesOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeWhiteListRulesOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result createWhiteListRuleOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createWhiteListRuleOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result describeWhiteListRuleOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeWhiteListRuleOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result modifyWhiteListRuleOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise modifyWhiteListRuleOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result deleteWhiteListRuleOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteWhiteListRuleOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result enableWebRuleWhiteList(array $args = [])
 * @method \GuzzleHttp\Promise\Promise enableWebRuleWhiteListAsync(array $args = [])
 * @method \DragonJd\Result enableWhiteListRuleOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise enableWhiteListRuleOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result disableWebRuleWhiteList(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disableWebRuleWhiteListAsync(array $args = [])
 * @method \DragonJd\Result disableWhiteListRuleOfWebRule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disableWhiteListRuleOfWebRuleAsync(array $args = [])
 * @method \DragonJd\Result describeWebRuleBlackListGeoAreas(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeWebRuleBlackListGeoAreasAsync(array $args = [])
 * @method \DragonJd\Result describeWebRuleWhiteListGeoAreas(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeWebRuleWhiteListGeoAreasAsync(array $args = [])
 * @method \DragonJd\Result describeWebRuleRSGeoAreas(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeWebRuleRSGeoAreasAsync(array $args = [])
 */
class IpantiClient extends JdCloudClient
{
    public function __construct(array $args)
    {
        $args['with_resolved'] = function (array $args) {
            $this->getHandlerList()->appendInit(
                PresignUrlMiddleware::wrap(
                    $this,
                    $args['endpoint_provider'],
                    [
                        'operations' => [
                        ],
                        'service' => 'ipanti',
                        'presign_param' => 'PresignedUrl',
                    ]
                ),
                'ipanti'
            );
        };

        parent::__construct($args);
    }
}